Пока 1D-ядра обрабатывают данные как линейный поток, Осознание структуры 2D сдвигает парадигму в сторону обработки структурированных "блоков". Современное аппаратное обеспечение графических процессоров оптимизирует производительность, группируя элементы в 2D-сетки, чтобы максимизировать пространственную локальность и использовать специализированные тензорные ядра.
1. За пределами поэлементной обработки
В 1D каждый поток вычисляет скаляр. В 2D-ядрах Triton программа работает с целыми блоками одновременно. Это обобщает простое сложение векторов до сложных матричных преобразований, таких как GEMM.
2. Пространственная локальность
Понимание того, как соседние элементы (горизонтальные и вертикальные) загружаются в кэш, — это скачок от образовательных ядер к готовым к использованию. Это гарантирует, что даже при транспонированной или дополненной памяти ядро обращается к данным без потерь пропускной способности.
3. Путь к производству
Овладение 2D-структурами позволяет разделять данные между Потоковыми мультипроцессорами (SMs) эффективно. Например, копирование матрицы, распознающее ширину/высоту, может загружать блоки 16×16 в быструю внутримикросхемную память, учитывая физический «шаг» тензора.